#pragma once

#include "Blobz.h"
#include <BlobzGui.h>
#include <BlobzUtility.h>


// Basic inheritance of the Interactable class in Blobz, it allows for standard move/scale/rotate interaction with an object
namespace TDigitalSignage
{
	class BottomInteractable13 : public Blobz::Interactable, public Blobz::GUIListener , public Blobz::BaseApplication
	{
	public:
		BottomInteractable13();
		~BottomInteractable13();

		
		void load(const QString& inApplicationDir);
		void unload();

		void loadGUI(const QString& inAppDir);
		void repositionGUI();
		virtual void onUpdate(float inFrameTime);
		
		void draw();
		bool isInside(const TouchListener::TouchData &inBlob);
		
		void onFingerDown(const TouchListener::TouchData& inData);
		void onFingerUp(const TouchListener::TouchData& inData);
		void onFingerUpdate(const TouchListener::TouchData& inData);
		void onGUIEvent(Blobz::GUIBase* inpComponent, Blobz::GUIEvent inGUIEvent, Blobz::FingerEvent inFingerEvent);
		//QVector2D rotatePointAboutPoint(QVector2D inPointA, QVector2D inPointB, float inAngle );

	public:

		Blobz::Sprite mSprite;
		QString mApplicationDirectory;
	
		Blobz::GUIManager mGUIManager;
		Blobz::Button* mpCancel;
		Blobz::Button* mpMax;
		Blobz::Button* mpBigMax;
		QFrame* frame;


	};
}